Fahrzeugbasteleien

Problem

Autoradio „Carminat“ mit GPS, aber ohne Line-In und ohne USB-Medienwiedergabe.

Lösung

Gibt's anscheinend schon fertig. (Ebay)

Lösung

Der CD-Wechsler-Emulator kommuniziert über eine schnöde bidirektionale serielle Schnittstelle mit dem Autoradio, damit letzteres einen solchen erkennt und dessen Wiedergabe freischaltet. Das Radio erwartet weiterhin einen digitalen Audiostrom ähnlich oder gleich S/PDIF. Daher enthält der Konverter einen entsprechenden A/D-Wandler und Leitungskodierer (beides Cypress-Chips). Vom Autoradio bekommt der Emulator 12 Volt Speisespannung, sodass sich hier auch USB-Buchsen zum Handyladen anbieten.

Der MP3-Spieler mit GPD2856 hat die angenehme Eigenschaft, nach Stromunterbrechung mit dem zuletzt gespielten Titel weiterzuspielen sowie sofort mit dem Abspielen zu beginnen. Daher stören Schaltvorgänge wenig, und die heutzutage möglichen 3000 Titel pro Medium kommen alle mal an die Ohren. Auch schaltet der Chip selbständig auf SD-Karte um, wenn alle Titel des USB-Sticks abgespielt sind, und umgekehrt.

Im Gehäuse des Wechsler-Emulators ist genügend Platz für beide Platinen, wenn man die Cinchbuchsen ausbaut und stattdessen eine Klinkenbuchse mit Schalter einbaut: Beim Einstecken des Klinkensteckers wird der Audiopfad vom MP3-Spieler abgetrennt, und es lässt sich ein externer Audioplayer betreiben, typischerweise mit einem Klinke-Klinke-Kabel wie bei PC-Monitoren. Zur Stromversorgung des MP3-Spielers wurde ein gesonderter 5-V-Festspannungsregler vom geschalteten Plus benutzt, weil der Stromverbrauch des USB-Sticks unbekannt ist und die USB-Buchse zum Laden von Handys einlädt. Auch kann man hier ein zusätzliches Navi anschließen. Noch besser ist ein 5-V-Schaltregler für diese Aufgabe.

Verdrahtungsplan. Der ATtiny13A steuert drei der vier Tasten sowie die Stromzufuhr

Der Befehlsdekoder ermöglicht schließlich das Weiterschalten von MP3-Titeln vom Lenkrad aus. Damit erspart man sich das Herauslegen von Bedientasten, deren Benutzung vom Straßengeschehen ablenken könnte. Der Mikrocontroller wurde kurzerhand — als SMD-Version in Tesafilm eingewickelt — fliegend verdrahtet, wie auch die übrigen 3 Bauelemente (Festspannungsregler, Transistor, Basiswiderstand). Zum Glück hat's auf Anhieb funktioniert.

Um die Firmware gründlich zu testen habe ich für den PC einen „Radio-Emulator“ in LabVIEW programmiert. Durch die Verwendung der Ereignisstruktur und der Zusammenlegung der Drück-Ereignisse für alle Tasten in einen Rahmen ist das Programm erfreulich übersichtlich und klein. (Wer mit LabVIEW anfängt, sollte sich das ruhig mal angucken.)

LabVIEW-Testprogramm (LabVIEW-Version 8.6) für die Mikrocontroller-Firmware. Es liefert die gleichen Daten wie das Radio

Da der GPD2856 bei Stromzufuhr losspielt, unabhängig davon, ob das Radio an oder aus ist, und weil es keinen Stopp/Play-Befehl gibt, besteht die Gefahr, dass Radio und MP3-Spieler beim Pausieren „außer Tritt“ (out of sync) kommen. In einem solchen Fall muss, bei aktiver CD-Wiedergabe, der USB-Stick gezogen und gesteckt werden. Immerhin bietet das Ganze die Funktion, dass während einer Verkehrsdurchsage auch die MP3-Wiedergabe pausiert (nicht nur stummgeschaltet) wird. Im Praxistest hat sich das Synchronisationsproblem nicht sonderlich bemerkbar gemacht; man musste es schon provozieren.

Prinzipiell ließe sich das Ganze (Line-In, MP3-Dekodierung, USB-Host und Digital-Audio-Out) heutzutage mit einem Chip erledigen, womöglich mit einem AT89C51SND1C, aber der Entwicklungsaufwand dafür ist deutlich höher. Da das Radio ohnehin keine Titelanzeige unterstützt, lassen sich derartige Infos leider nicht auf dessen Bildschirm anzeigen, schade.